package com.meta.act.app.system.mapper;

//import com.meta.framework.act.tenant.entity.TenantUser;
//import com.meta.framework.act.tenant.req.ro.TenantUserRo;
import com.meta.act.app.tenant.entity.TenantUser;
import com.meta.act.app.tenant.req.ro.TenantUserRo;
import com.meta.act.app.tenant.res.TenantUserVo;
import com.meta.framework.common.annotation.TenantSkip;
import com.meta.framework.common.enums.TenantSkipE;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 租户与用户关联表
 *
 * @author Simon
 * @email 1111111111111@qq.com
 * @date 2020-11-04 15:23:04
 */
@Repository
public interface TenantUserMapper {

	/**
	 * insert tenantUser info
	 * @method insertTenantUser
	 * @param       tenantUser:
	 * @return void
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int insertTenantUser(TenantUser tenantUser);

	/**
	 * batchInsert tenantUser info
	 * @method insertTenantUser
	 * @param       tenantUsers:
	 * @return void
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	void batchInsertTenantUser(List<TenantUser> tenantUsers);

	/**
	 * update tenantUser info
	 * @method updateTenantUser
	 * @param       tenantUser:
	 * @return int
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int updateTenantUser(TenantUser tenantUser);

	/**
	 * update tenantUser info by Pk
	 * @method updateTenantUserByPk
	 * @param       tenantUser:
	 * @return int
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	int updateTenantUserByPk(TenantUser tenantUser);

	/**
	 * list tenantUser info
	 * @method listTenantUser
	 * @param       tenantUserRo:
	 * @return List<TenantUser>
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	@TenantSkip(isSkip = TenantSkipE.SKIP)
	List<TenantUser> listTenantUser(TenantUserRo tenantUserRo);

	List<TenantUserVo> listTenantUserInfo(TenantUserRo tenantUserRo);

}
